/*
 *@file:start.S
 */
#define WTCON       0xE2700000
#define SVC_STACK   0xD0037D80

#define PS_HOLD_CONTORL     0xE010E81C

.global _start
_start:
    //给开发置锁，5V电源使能
    ldr r0,=PS_HOLD_CONTORL
    ldr r1,[r0]
    orr r1,r1,#0x300
    orr r1,r1,#0x1
    str r1,[r0]

    //关看门狗(向WTCON的bit5写入0即可)
    ldr r0,=WTCON
    ldr r1,=0x0
    str r1,[r0]

    //设置SVC栈
    ldr sp,=SVC_STACK

    //开/关iCache
    mrc p15,0,r0,c1,c0,0;
    orr r0,r0,#(1<<12)
    mcr p15,0,r0,c1,c0,0;

    //初始化ddr
    bl sdram_asm_init

    //重定位，从SD卡第45扇区开始
    //复制32个扇区内容到DDR的0x23E00000
    bl copy_bl2_2_ddr

    b .
